home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48hor1
/
fly.doc
< prev
next >
Wrap
Text File
|
1995-03-31
|
7KB
|
145 lines
(Comp.sys.handhelds)
Item: 3382 by anderson at truebalt.caltech.edu
Author: [Eric R. Anderson]
Subj: HP48: Aviation/Flight Planning programs
Date: Thu Jun 06 1991
[Note: Eric describes how to "unpack" the program. He is referring to the
source code listing, called FLY.SRC on this disk. But you don't need to
bother "unpacking" it, because I already did. The binary file, called
FLY on this disk, is fully "unpacked" and ready to download and run. -jkh-]
What follows is a group of programs making up an electronic flight
computer of sorts. The flight computer is made up of 6 functions:
Weight and Balance with 9 plane memory and CG graphing
Flight plan of up to eight legs
Winds aloft calculation
Density altitude
Distance and heading between two points
Crosswind components
Each will be described more fully later. These functions can be accessed
either alone, or by selecting from a menu presented by running START.
There is a minimal amount of error checking in the programs, but if run
from the START menu, the stack will be cleaned up if an error does occur.
If flag 10 is set, the output of some of the program is changed to metric.
Units are allowed (even encouraged) unless noted below, and appropriate
conversions made. Extensive use is made of PGROB and UPGROB from Erik Bryntse,
and they are included in the directory. The last four functions could be done
much more compactly with the equation solver, but the programs provide a front
end for things. The CST menu is also defined for conversions between fuel
volume and weight (at 6lbs/gal).
The whole thing is rather large, and to download on my 30K calculator
requires removing everthing but ASC-> and ->ASC. ASC-> is required to unpack
the directory. When I download it, everything goes fine until the last packet
or two, when the calculator quits responding. Both Kermits eventually time out,
and the directory is present and whole on the calculator. I'm not sure if this
is just my calculator, or what. If it happens, just be patient. Once
downloaded, press AERO to get into the directory, then SETUP to unpack it.
Press START to begin.
Notes:
FPLAN, WIND, and CWIND use vector arithmetic, so beware if you have an HP 48
with the vector bug. The checksums are:
Before unpacking: #11040d
23664.5
After unpacking: # 5241d
17881.5
Disclaimer: Use at your own risk. Feel free to redistribute in whole
or in part if it strikes your fancy. If you want to make improvements, go
ahead - I'm graduating in a week and a half, and losing net access, so I can't
post any I make.
Program Descriptions:
The primary programs are described in the order they appear in the VAR menu.
Since the directory is rather large, I have included a list of programs
that call each program, so if you decide you don't want one of the functions,
you can delete all the programs that only it calls. To save memory, I run
without START and HELP, which saves about 5K. I apologise if the descriptions
are a little cryptic. The program follows the descriptions.
START: Called by: None
Use the arrow keys to move around, and ENTER to select choice.
Press any key to return to menu after program execution.
HELP: Called by: START, self executable
Presents three short help screens.
FPLAN: Called by: START, self executable
Computes magnetic heading, groundspeed, time en route, and fuel
burn for up to eight legs of a flight. If units are entered for
distance or fuel consumption rate on the first leg, units must be
entered for each remaining leg. Time is shown in Hours:minutes
format.
W&B: Called by: START, self executable
Compute weight and balance for selected aircraft, and plots weight
vs moment arm if graph is defined for aircraft. Output is metric
if flag 10 is set. If a graph has been defined for the plane chosen,
flag 10 must be set so the output matches the units used in defining
the graph for the graph to be valid. Choose ADD/DELETE to add a new
plane or delete an old one. When adding a plane, select 0 for the
number of points in the graph to save memory. If you want to define
a graph, select a number of points equal to the number of line
segments in the graph + 1. A line will be drawn from each point to the
next point entered. Points are entered in the form (without units)
{ moment/1000 weight }. When asked for a station name, keep in
mind that W&B will append "weight and moment arm" after the name
you supply.
WIND: Called by: START, self executable
Calculates winds aloft from true course, ground speed, true heading
and true airspeed.
DALT: Called by: START, self executable
Calculates density altitude from pressure altitude and temperature.
Valid only for altitudes less than 36000 ft.
DISTANCE: Called by: START, self executable
Calculates distance and true heading between two points of
latitude and longitude entered in hhh.mmss form. Points in
the southern or eastern hemisphere may need to be entered as
negative. The program has only been tested for points N and W.
CWIND: Called by: START, self executable
Given a heading and wind speed and direction, calculates headwind
and crosswind components. Does not support units - units of
components are same as of wind speed.
PAUSE: Called by: START
TRAP: Called by: START
MAKEMENU: Called by: none
Utility to make a menu for use with CHOOSE.
ADDPLANE: Called by: W&B
STRIP: Called by: START, FPLAN
PAD: Called by: START
CHOOSE: Called by: START, W&B, ADDPLANE
Call with initial cursor position in stack level 2, and the menu grob
in level 1. Returns cursor postion when ENTER is pressed.
ADDGRAPH: Called by: ADDPLANE
SCL: Called by: ADDGRAPH, CGGRAPH
WBIN: Called by: W&B
CGGRAPH: Called by: W&B
PGROB, UPGROB: Called by: HELP,CHOOSE, ADDPLANE, CGGRAPH, ADDGRAPH, FPLAN
PLANES: Called by W&B, ADDPLANE
Stores the list of planes for use by W&B. Each plane list has the
format
{ { CGgraph maxmoment minmoment maxweight minweight }
{ { station1name station1weight station1arm }
{ station2name station2weight station2arm }
.
.
.
{ stationNname stationNweight stationNarm } }
"Plane name"
}
FPLAN.GROB: Called by: FPLAN
HELP.{123}: Called by: HELP
STMENU: Called by: START
WBMENU: Called by: W&B, ADDPLANE
CURSOR: Called by: CHOOSE
UNITMENU: Called by: W&B, ADDPLANE
PLMENU: Called by: ADDPLANE
DESCMENU: Called by: ADDPLANE
Gal: Called by: W&B, FPLAN, ADDPLANE, CST (Defines 1 Gallon = 6 lbs)
L: Called by: W&B, FPLAN, ADDPLANE, CST
CST: Called by: None